package com.quxiu.system.domain.vo;

import com.quxiu.system.domain.BpmHandler;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
public class BpmNodeByApplyVo {
    /** 节点id */
    private Long nodeId;
    /** 节点名称 */
    private String nodeName;
    /** 节点类型 */
    private String nodeType;

    /**
     * 处理人范围 1-指定人员 2-部门主管 3-连续多级主管 4-发起人自选
     */
    private Integer handlerScope;

    /**
     * 处理模式 1-依次审批（按顺序同意或拒绝） 2-会签（需要所有审批人都同意才可通过）3-或签（其中一名审批人同意或拒绝即可）
     */
    private Integer handleModel;

    /**
     * 发起人自选类型 1-自选一个人 2-自选多个人
     */
    private Integer selfSelectionType;
    /**
     * 发起人自选范围 1-全公司 2-指定人员
     */
    private Integer selfSelectionScope;
    /**
     * 发起人自选项列表
     */
    private List<UserScope> selfSelectionItems;

    /**
     * 处理者列表
     */
    private List<BpmHandler> handlerList = new ArrayList<>();

    public void addHandler(Long userId, String name) {
        handlerList.add(new BpmHandler(userId, name));
    }

}
